package com.zdy.im.user.dto.request;

import com.sixeco.framework.common.api.ApiDesc;
import com.sixeco.framework.common.data.BaseBeanClone;

/**
 * @Author 作者 : zdy
 * @CreateDate 创建时间: 2021-02-30
 * @Version 版本: v1.0.0
 * <pre>
 *
 *  @Description (说明):  读消息协议请求对象
 *
 * </pre>
 **/

public class ImChatReadStatusRequestDto extends BaseBeanClone {

    @ApiDesc(value = "变更消息返回状态协议编码cmd=106",required = 1)
    private int cmd;
    @ApiDesc(value = "发送者用户id",required = 1)
    private long sendUserId;
    @ApiDesc(value = "用接者用户id",required = 1)
    private long toUserId;
    @ApiDesc(value = "变更消息Id",required = 1)
    private long messageId;
    /** ChatMessageEnum 数据来源于这个枚举**/
    @ApiDesc(value = "变更消息类型,0.未读,1.已读,2.撤销,3.删除")
    private int readType;


    public static ImChatReadStatusRequestDto build(){
        return new ImChatReadStatusRequestDto();
    }

    public ImChatReadStatusRequestDto toSendUserId(long sendUserId) {
        this.sendUserId = sendUserId;
        return this;
    }

    public ImChatReadStatusRequestDto toToUserId(long toUserId) {
        this.toUserId = toUserId;
        return this;
    }

    public ImChatReadStatusRequestDto toMessageId(long messageId) {
        this.messageId = messageId;
        return this;
    }

    public ImChatReadStatusRequestDto toReadType(int readType) {
        this.readType = readType;
        return this;
    }

    public ImChatReadStatusRequestDto toCmd(int cmd) {
        this.cmd = cmd;
        return this;
    }

    public int getCmd() {
        return cmd;
    }

    public void setCmd(int cmd) {
        this.cmd = cmd;
    }

    public long getSendUserId() {
        return sendUserId;
    }

    public void setSendUserId(long sendUserId) {
        this.sendUserId = sendUserId;
    }

    public long getToUserId() {
        return toUserId;
    }

    public void setToUserId(long toUserId) {
        this.toUserId = toUserId;
    }

    public long getMessageId() {
        return messageId;
    }

    public void setMessageId(long messageId) {
        this.messageId = messageId;
    }

    public int getReadType() {
        return readType;
    }

    public void setReadType(int readType) {
        this.readType = readType;
    }
}
